import { extend } from 'vee-validate'
import { required } from 'vee-validate/dist/rules'

// 手机号正规则
export const phoneReg =
	/^1((34[0-8])|(8\d{2})|(([35][0-35-9]|4[579]|66|7[35678]|9[1389])\d{1}))\d{7}$/
// 密码正则
const passwordReg = /^[0-9a-zA-Z_]{6,18}$/

/*
  extend('定义规则名字'，{配置对象})
*/
// 定义表单验证规则
extend('phoneRequired', {
	// 手机号必填规则
	...required, // 使用必填的规则
	message: '手机号必填', //提示
})
extend('phone', {
	validate(val) {
		// val参数是收集表单value的值  设置属性mode=lazy 就是失去焦点才会触发
		// 要一个返回值 true 或 false
		// true 就是通过验证，false验证失败
		return phoneReg.test(val)
	},
	message: '请填写正确的手机号',
})

extend('passwordRequired', {
	...required,
	message: '请输入密码',
})
extend('password', {
	validate(val) {
		return passwordReg.test(val)
	},
	message: '请输入合法的密码',
})
